草庐IT

python - 后台进程 subprocess.Popen with Pipe

全部标签

python - 在 Windows 上安装 Django

由于我的本地机器是Windows,所以我在本地机器上安装django有点费时。我有问题的一件事是包含#!/usr/bin/envpython每个文件都有这个包含。我在我的全局变量中设置了python,所以我可以调用它,就像python或者我可以像这样包含它#!python但不喜欢#!/usr/bin/envpython我的假设是,为了让它起作用。我可能不得不将我的解释器移动到一个名为的文件夹中c:/user/bin/env是这样还是有更好的办法。我该死的肯定不想更改所有文件夹中的所有路径。 最佳答案 你只需要设置PATH环境变量(添

python - 我可以在 python sys.path 中看到目录,但在尝试导入库时出现错误?

我的猜测是我遗漏了一些非常基本和明显的东西,有人可以向我指出这些东西。下面的简短命令行session屏幕截图显示了以下内容:我可以看到sys.path中存在pysal目录,但当我尝试导入pysal时却收到ImportError? 最佳答案 Python在sys.path中的条目中导入包和模块,而不是条目本身。这意味着C:\Users\Max\Documents\pysal\pysal.py或C:\Users\Max\Documents\pysal\pysal\__init__.py会必须存在才能导入。

python - 如何在 pypi 上为多个版本的 Python 分发预编译的 Windows 扩展模块?

我想为Python2.6和Python2.7分发预编译的C扩展模块,用于32位和64位版本的Python。我应该如何在pypi上构建和分发它?我应该只使用bdist_egg吗?我可以保持与pip的兼容性吗?我注意到普通的bdist只是创建了一个不包含Python版本的.zip,尽管内部文件夹结构包含。这个.zip可以只包含例如Python26和Python27子目录? 最佳答案 您通常需要为需要支持的每个Python版本运行bdist_something。bdist_egg确实适用于PIPafaik(您可以轻松地对其进行测试)。Zo

windows - Windows 进程的转储句柄和有关它们的额外信息

今天,我的应用程序在分配图像时在Windows上抛出“不再有句柄”错误。要对此进行调试,我很想获得我的应用程序已获取的所有句柄的列表。如果可能,甚至使用字体、图像或其他类型,并在我的错误报告中包含这些信息以查看我的应用程序泄漏的位置。我使用Java和SWT,但在这种情况下调用native函数或第三方应用程序来获取信息没有问题。 最佳答案 对于实用程序,请尝试Microsoft的ProcessExplorerSysinternals.这将显示进程字符串、句柄、文件、父进程、线程、线程堆栈等等。

python - 为 Popen() 调用最小化了 CMD 窗口?

我正在使用Popen()启动一个Windows应用程序,并且弹出一个WindowsCMD控制台,我需要它来监视标准输入/输出。有没有办法可以立即最小化这个CMD窗口?控制台窗口本身会干扰Popen()启动的应用程序,因为它会遮挡可见的桌面。我在winXP32和Python2.6上。谢谢! 最佳答案 如果CMD控制台有一个明确的标题,您可以获取它的句柄并将其最小化(在进程启动后):importwin32guihandle=win32gui.FindWindow(None,cmd_window_title)win32gui.ShowWi

Windows 上用于访问 SFTP 站点的 Python 脚本

我需要访问sftpUSER@sfile.WEBSITE.com并在每天凌晨3点获取20110310statement.pdf到目录$HOME\STATEMENTS。我不知道如何在提供用户名和密码并在Windows上计算日期字符串的脚本中执行此操作。我建议使用Python,但我对任何脚本语言都持开放态度。有什么建议吗? 最佳答案 你试过了吗paramiko?您可以使用time模块获取当前日期并根据需要设置格式。 关于Windows上用于访问SFTP站点的Python脚本,我们在StackO

windows - Windows 中事件进程列表的用途?

我注意到所有_EPROCESS对象都通过ActiveProcessList链接相互链接。这个列表的目的是什么。操作系统使用这个事件进程列表做什么? 最佳答案 在WindowsNT中,可调度的单位是线程。进程充当线程的容器,也充当定义哪些虚拟内存映射处于事件状态(以及其他一些东西)的抽象。所有操作系统都需要保持此信息可用。在不同的时间,操作系统的不同组件可能需要搜索与特定特征匹配的进程,或者需要评估所有事件进程。那么,我们如何存储这些信息呢?为什么不是内存中的巨大数组?那么,这个阵列有多大?我们是否愿意将事件进程的数量限制为该数组的大

windows - 结束 Windows 应用程序(但不是简单地终止进程)

我想优雅地结束某个Windows应用程序,而不使用鼠标或键盘快捷键。我也不想简单地结束应用程序的进程。(因此,“优雅地”。)换句话说,我想调用应用程序自己的“退出程序”。我该怎么做?我不介意沉迷于代码和可疑的黑客攻击,我只是不知道从哪里开始……使用AutoHotkey模拟结束应用程序所需的按键对我来说还不够好。:P 最佳答案 Windows任务管理器为此使用EndTask函数:EndTaskFunction.此函数首先发送友好的WM_CLOSE消息。 关于windows-结束Window

Python:调用 process.terminate() 不会杀死它

当我运行以下代码时:p=subprocess.Popen("...",shell=True)ifp.poll()==None:p.kill()进程根本就没有被杀死。我在Windows上。我以为是多线程的缘故,我在单线程中运行,还是一样。您知道为什么会发生这种情况吗?谢谢更新我找到了导致问题的代码:whilecur_time我运行它是为了确保该过程不会超过时间限制。显然这就是我无法终止进程的原因。 最佳答案 因为您使用了shell=True,所以您最终杀死的只是shell(cmd.exe进程)本身。进程组是Windows的一项相对较新

c++ - 如何寻址由另一个进程的给定 IUnknown* 标识的 COM 对象?

我写了两个小的C++应用程序,其中一个是嵌入了一些ActiveX控件的ActiveX容器。此容器应用程序知道引用ActiveX控件的IUnknown*。另一个应用程序是一个客户端,它应该与前一个应用程序中的ActiveX控件进行交互。但是,我不知道如何在客户端应用程序中获取控件的句柄。由于独立的地址空间,简单地将IUnknown*的指针值从服务器传输到客户端在类(class)中是行不通的。是否可以通过某种方式“复制”某个COM对象的句柄,以便其他进程可以使用新创建的句柄?我想让COM为我完成RPC工作。否则,我需要在服务器应用程序中执行所有COM调用并自己执行所有RPC。:-/